ci: Call the report script on failure as well
authorEmmanuele Bassi <ebassi@gnome.org>
Fri, 5 Apr 2019 18:29:58 +0000 (19:29 +0100)
committerEmmanuele Bassi <ebassi@gnome.org>
Fri, 5 Apr 2019 19:29:16 +0000 (20:29 +0100)
GitLab's CI will bail out at the first failure, which means the
JSON-to-JUnit conversion script won't run unless it's part of the same
script that we run for building an testing.

.gitlab-ci.yml
.gitlab-ci/test-docker.sh

index a7fb6c16a15e4737e6a4e4a6f117e61827b6d804..f8019eb9356b5af73c8e312e0aba5679b7b3ad97 100644 (file)
@@ -17,7 +17,6 @@ fedora-x86_64:
   stage: build
   script:
     - bash -x ./.gitlab-ci/test-docker.sh
-    - python3 ./.gitlab-ci/meson-junit-report.py --project-name=gtk --job-id="${CI_JOB_NAME}" --output=_build/report.xml _build/meson-logs/testlog.json
   artifacts:
     when: always
     reports:
index 17cc7f7313dab85581de9ef0baa66626624652fd..c070ada43d2fb4dbc343e8b1b16b66e07ca012fa 100755 (executable)
@@ -24,6 +24,8 @@ cd _build
 ninja
 ccache --show-stats
 
+set +e
+
 xvfb-run -a -s "-screen 0 1024x768x24" \
     meson test \
         --timeout-multiplier 2 \
@@ -32,3 +34,15 @@ xvfb-run -a -s "-screen 0 1024x768x24" \
         --no-suite=gtk:gsk \
         --no-suite=gtk:reftest \
         --no-suite=gtk:a11y
+
+# Save the exit code
+exit_code=$?
+
+# We always want to run the report generator
+$srcdir/.gitlab-ci/meson-junit-report.py \
+        --project-name=gtk \
+        --job-id="${CI_JOB_NAME}" \
+        --output=report.xml \
+        meson-logs/testlog.json
+
+exit $exit_code